class TxtFileReader:
    def __init__(self, file_path, content_data, mode='w', encoding='utf-8'):
        """
        初始化 TextReader 类。
        :param file_path: 要读取的文件的路径。
        :param encoding: 文件的编码，默认为 'utf-8'。
        """
        self.file_path = file_path  # 存储文件路径
        self.encoding = encoding
        self.content_data = content_data
        self.mode = mode

    def read_file(self):
        """
                以文本模式读取整个文件的内容。
                :return: 读取到的文件内容，如果出现错误返回 None。
                """
        try:
            # 打开文件，'r' 表示只读模式
            with open(self.file_path, 'r', encoding=self.encoding) as file:
                # 读取文件的全部内容
                content = file.read().strip().replace('\n', '')
            return content
        # 处理文件未找到的异常
        except FileNotFoundError:
            print(f"文件 {self.file_path} 未找到，请检查文件路径是否正确。")
            # 抛出异常
            raise FileNotFoundError
        except Exception as e:  # 处理其他异常
            print(f"读取文件时出现错误: {e}")
            # 抛出异常
            raise Exception

    def write_to_file(self):
        """
        将内容写入文件。
         content_data: 写入文件的内容
         mode: 写入文件的方式
        :return: 是否成功
        """
        try:
            # 打开文件，'w' 表示写入模式，如果文件不存在会创建新文件
            with open(self.file_path, mode=self.mode, encoding=self.encoding) as file:
                file.write(self.content_data)
                return True
        except FileNotFoundError as e:  # 处理其他异常
            print(f"写入文件时出现错误: {e}")
            return FileNotFoundError


if __name__ == '__main__':
    # data = TxtFileReader("../123.txt")
    # data1 = data.read_file()
    # print(data1)
    content = "hello world1234567"
    data = TxtFileReader(file_path="../123.txt", encoding='utf-8', content_data=content, mode='a')
    data1 = data.write_to_file()
    print(data1)